﻿using System;

namespace RpcCacheClient.Interface
{
    public interface IMemcachedCache : ICacheController
    {
        bool CasAdd<T>(string key, T data);
        bool CasAdd<T>(string key, T data, TimeSpan expiresAt);
     
    
        bool Replace<T>(string key, T data, ref ulong cas);
        bool Replace<T>(string key, T data, ref ulong cas, TimeSpan expiresAt);

        bool Set<T>(string key, T data, ref ulong cas);
        bool Set<T>(string key, T data, ref ulong cas, TimeSpan expiresAt);
        bool TryGet<T>(string key, out T data, out ulong cas);
    
    
    }
}